<?php

session_start();
require_once("../../dao/DepartamentoDaoImp.class.php");
require_once("../../model/Departamento.class.php");
$depDao = new DepartamentoDaoImp();
$dep = new Departamento();
$dep->setId($_POST['id']);
$dep->setNome($_POST['nome']);
$dep->setSigla($_POST['sigla']);

if (isset($_POST['situacao'])) {
    $dep->setSituacao($_POST['situacao']);
} else {
    $dep->setSituacao(1); //aberto
}

if (isset($_POST['conta'])) {//alterar ou excluir
    $dep->setConta($_POST['conta']);
}

if (isset($_POST['departamentoSup'])) {
    $dep->setDepSuperior($_POST['departamentoSup']);
} else {
    $dep->setDepSuperior('null');
}

$acao = $_POST['acao'];
switch ($acao) {
    case 1: {

            if ($depDao->inserir($dep)) {
                echo "Cadastro realizado com sucesso!";
            } else {
                echo "Erro no cadastro!";
            }
            break;
        }
    case 2: {
            if ($depDao->alterar($dep)) {
                echo "Alteração realizada com sucesso!";
            } else {
                echo "Erro ao alterar!";
            }
            break;
        }
    case 3: {
            require_once('../../dao/ContaDaoImp.class.php');
            require_once('../../model/Conta.class.php');
            $dao = new ContaDaoImp();
            $result = $dao->buscarId($dep->getConta());
            $row = $result->fetch(PDO::FETCH_OBJ);


            if ($row->saldo <= 0) {

                if ($depDao->fechar($dep->getId())) {
                    echo "Fechado com sucesso!";
                } else {
                    echo "Erro ao Fechar! <br> Verifique se este departamento não está ligado a nenhum outro.";
                }
                break;
            } else {
                echo "Erro ao Fechar! <br> Anule o saldo antes de fechar o departamento!";
            }
        }
    default:break;
}
?>
